﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
using NL.ADA.Common;
using NL.ADA.ConfigService.DAL.HelperClasses;
using NL.ADA.ConfigService.DAL.EntityClasses;

namespace NL.ADA.AdminService
{
    // NOTE: If you change the interface name "IAdminService" here, you must also update the reference to "IAdminService" in Web.config.
    [ServiceContract]
    public interface IAdminService
    {
        
        [OperationContract]
        CustomConfigList   GetAllConfigs(int appId, int modeId);
        [OperationContract]
        int UpdateConfig(CustomConfig config);
        [OperationContract]
        EntityCollection GetApplications();
        [OperationContract]
        int InsertConfig(CustomConfig config);
        [OperationContract]
        bool Deleteconfig(int configId);
        [OperationContract]
        EntityCollection GetAllModes();
        [OperationContract]
        EntityCollection GetAllConfigTypes();
        [OperationContract]
        CustomConfig GetConfigById(int id);
        [OperationContract]
        CustomConfig GetConfigByKey(string key, int appId, int modeId);
        [OperationContract] 
        int InsertApplication(ApplicationEntity entity);
        [OperationContract]
        ApplicationEntity SelectApplicationById(int id);
    }
}
